Advanced Concepts
This section details how to perform some more advanced modifications to the gem5 source code. You may find this useful when implementing assignment 2, but this is more supplementary information than anything else.
Referencing this issue in the SCons repository, there is support to generate a compile_commands.json
file for your editor. Currently, I am not sure if there is full feature parity with the clang
format, but if you reeeeeeally need/want syntax highlighting and all the editor fanciness, then you will need to determine how to create this file with your setup. If you use neovim, the lsp will automatically source from compile_commands.json
if you restart the lsp server after its generation. Same story for emacs. VSCode, JetBrains, [insert your favorite alternative editory here] people, you're on your own.
If you have any topics that are not covered in this section and/or the learning gem5 website then please ask the TA, and we will (most likely) prepare a module for whatever modification and extension that you want to see.